<?php
/* 
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

require_once 'Zend/Dojo/Form.php';

/**
 * Description of AbmClientes
 *
 * @author kristian
 */
class AbmClientesForm extends Zend_Dojo_Form{

    public function init(){
        $tiposDoc = array(
            'doc1' => 'CUIT',
            'doc2' => 'DNI',
             'doc3' => 'LE'
        );
        $localidades = array(
            'ciudad1' => 'Puerto Madryn',
            'ciudad2' => 'Trelew',
            'ciudad3' => 'Comodoro Rivadavia',
            'ciudad4' => 'Esquel'
        );
        $clientes = array(
            'color1' => 'rojo',
            'color2' => 'azul',
            'color3' => 'verde'
        );

        // Setup form
        $this->setName('abmClientes');
        $this->setAction($this->getView()->url())->setMethod('post'); 
        $this->addAttribs(array('onSubmit'=>'return validate(this)'));

        $nombre = $this->createElement(
            'ValidationTextBox',
            'razonSocial',
            array(
                'value' => '',
                'label' => 'Razon Social: ',
                'trim' => 'true',
                'propercase' => 'true',
                'required' => 'true',
                'regExp' => '([A-Z][a-z]*[ ])+',
                'InvalidMessage' => 'No es un nombre válido'
            )
        );

        $tipos = $this->createElement(
            'FilteringSelect',
            'tipoDocumento',
            array(
                'label'        => 'Tipo de documento: ',
                'value'        => $tiposDoc['doc1'],
                'autocomplete' => true,
                'multiOptions' => $tiposDoc,
                'required' => 'true'
            )
        );


        $documento = $this->createElement(
            'ValidationTextBox',
            'nroDocumento',
            array(
                'value' => '',
                'label' => 'Numero de documento: ',
                'trim' => 'true',
                'propercase' => 'true',
                'regExp' => '[0-9]{11}',
                'required' => 'true',
                'InvalidMessage' => 'El número de documento no es valido'
            )
        );

        $ciudades = $this->createElement(
            'FilteringSelect',
            'localidad',
            array(
                'label'        => 'Localidad: ',
                'value'        => $localidades['ciudad1'],
                'autocomplete' => true,
                'multiOptions' => $localidades,
                'required' => 'true'
            )
        );

        $domicilio = $this->createElement(
            'ValidationTextBox',
            'domicilio',
            array(
                'value' => '',
                'label' => 'Domicilio: ',
                'trim' => 'true',
                'propercase' => 'true',
                'required' => 'true',
                'regExp' => '[A-Z]{1}[a-z]*[ ]{1}[0-9]+',
                'InvalidMessage' => 'No es un domicilio válido. Ingrese calle y altura'
            )
        );

        $telefono = $this->createElement(
            'ValidationTextBox',
            'nroTelefono',
            array(
                'value' => '',
                'label' => 'Numero de telefono: ',
                'trim' => 'true',
                'propercase' => 'true',
                'regExp' => '[0-9]{20}',
                'InvalidMessage' => 'No es un número de teléfono válido'
            )
        );

        $email = $this->createElement(
            'ValidationTextBox',
            'email',
            array(
                'value' => '',
                'label' => 'Correo electronico: ',
                'trim' => 'true',
                'propercase' => 'true',
                'regExp' => '[a-z]+@[a-z].[a-z]{3}'
            )
        );

        $submit = $this->createElement(
            'SubmitButton',
            'submit',
            array(
                'required' => 'false',
                'ignore' => 'true',
                'label' => 'Agregar'
            )
        );

        $listaClientes = $this->createElement(
            'FilteringSelect',
            'clientes',
            array(
                'label'        => 'Clientes: ',
                'value'        => $clientes['color1'],
                'autocomplete' => true,
                'multiOptions' => $clientes
            )
        );

        $this->addElements(array(
                $listaClientes,
                $nombre,
                $tipos,
                $documento,
                $ciudades,
                $domicilio,
                $telefono,
                $email,
                $submit
        )
        );

        //$this->render($this->getView());



















//        $border = new Zend_Dojo_View_Helper_BorderContainer();
//        $content = new Zend_Dojo_View_Helper_ContentPane();
//        $vista = new Zend_View();
//
//        $border->borderContainer()->captureStart('masterLayout');
//
//            echo $content->captureStart('listaClientes', array('region' => 'left'));
//
//                echo $this->addElement(
//                    'FilteringSelect',
//                    'clientes',
//                    array(
//                        'label'        => 'Clientes: ',
//                        'value'        => $clientes[0],
//                        'autocomplete' => true,
//                        'multiOptions' => $clientes
//                    )
//                );
//
//            echo $content->captureEnd('listaClientes');
//
//            echo $this->contentPane()->captureStart('detalles', array('region' => 'center'));
//
//            echo    $this->addElement(
//            'TextBox',
//            'nombre',
//            array(
//                'value' => '',
//                'label' => 'Razon Social: ',
//                'trim' => 'true',
//                'propercase' => 'true',
//                'required' => 'true'
//            )
//        );
//
//        echo $this->addElement(
//            'FilteringSelect',
//            'tipos',
//            array(
//                'label'        => 'Tipo de documento: ',
//                'value'        => $tiposDoc[0],
//                'autocomplete' => true,
//                'multiOptions' => $tiposDoc,
//                'required' => 'true'
//            )
//        );
//
//
//        echo $this->addElement(
//            'ValidationTextBox',
//            'nroDocumento',
//            array(
//                'value' => '',
//                'label' => 'Numero de documento: ',
//                'trim' => 'true',
//                'propercase' => 'true',
//                'regExp' => '[0-9]{11}',
//                'required' => 'true'
//            )
//        );
//
//        echo $this->addElement(
//            'FilteringSelect',
//            'localidades',
//            array(
//                'label'        => 'Localidad: ',
//                'value'        => $localidades[0],
//                'autocomplete' => true,
//                'multiOptions' => $localidades,
//                'required' => 'true'
//            )
//        );
//
//        echo $this->addElement(
//            'TextBox',
//            'domicilio',
//            array(
//                'value' => '',
//                'label' => 'Domicilio: ',
//                'trim' => 'true',
//                'propercase' => 'true',
//                'required' => 'true'
//            )
//        );
//
//        echo $this->addElement(
//            'ValidationTextBox',
//            'nroTelefono',
//            array(
//                'value' => '',
//                'label' => 'Numero de telefono: ',
//                'trim' => 'true',
//                'propercase' => 'true',
//                'regExp' => '[0-9]{20}'
//            )
//        );
//
//        echo $this->addElement(
//            'ValidationTextBox',
//            'email',
//            array(
//                'value' => '',
//                'label' => 'Correo electronico: ',
//                'trim' => 'true',
//                'propercase' => 'true',
//                'regExp' => '[a-z]+@[a-z].[a-z]{3}'
//            )
//        );
//
//        echo $this->addElement(
//            'SubmitButton',
//            'btnSubmit',
//            array(
//                'required' => 'false',
//                'ignore' => 'true',
//                'label' => 'Agregar'
//            )
//        );
//
//            echo $this->contentPane()->captureEnd('detalles');
//
//        echo $border->borderContainer()->captureEnd('masterLayout');
//
//        $this->setView($border);
    }
}
?>
